home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / SLAX 6.0.8 / slax-6.0.8.iso / slax / base / 006-devel.lzm / usr / include / k3baudiozerodata.h < prev    next >
Encoding:
C/C++ Source or Header  |  2008-05-27  |  1.3 KB  |  56 lines

  1. /* 
  2.  *
  3.  * $Id: k3baudiozerodata.h 619556 2007-01-03 17:38:12Z trueg $
  4.  * Copyright (C) 2004 Sebastian Trueg <trueg@k3b.org>
  5.  *
  6.  * This file is part of the K3b project.
  7.  * Copyright (C) 1998-2007 Sebastian Trueg <trueg@k3b.org>
  8.  *
  9.  * This program is free software; you can redistribute it and/or modify
  10.  * it under the terms of the GNU General Public License as published by
  11.  * the Free Software Foundation; either version 2 of the License, or
  12.  * (at your option) any later version.
  13.  * See the file "COPYING" for the exact licensing terms.
  14.  */
  15.  
  16. #ifndef _K3B_AUDIO_ZERO_DATA_H_
  17. #define _K3B_AUDIO_ZERO_DATA_H_
  18.  
  19. #include "k3baudiodatasource.h"
  20. #include "k3b_export.h"
  21.  
  22. class LIBK3B_EXPORT K3bAudioZeroData : public K3bAudioDataSource
  23. {
  24.  public:
  25.   K3bAudioZeroData( const K3b::Msf& msf = 150 );
  26.   K3bAudioZeroData( const K3bAudioZeroData& );
  27.   ~K3bAudioZeroData();
  28.  
  29.   K3b::Msf originalLength() const { return m_length; }
  30.   void setLength( const K3b::Msf& msf );
  31.  
  32.   QString type() const;
  33.   QString sourceComment() const;
  34.  
  35.   bool seek( const K3b::Msf& );
  36.   int read( char* data, unsigned int max );
  37.  
  38.   K3bAudioDataSource* copy() const;
  39.  
  40.   /**
  41.    * Only changes the length
  42.    */
  43.   void setStartOffset( const K3b::Msf& );
  44.  
  45.   /**
  46.    * Only changes the length
  47.    */
  48.   void setEndOffset( const K3b::Msf& );
  49.  
  50.  private:
  51.   K3b::Msf m_length;
  52.   unsigned long long m_writtenData;
  53. };
  54.  
  55. #endif
  56.